﻿#include QMK_KEYBOARD_H

enum layers {
  _QWERTY,
  _HYPER,
  _SIGN
};


#define KC_ KC_TRNS

#define KC_ESCC MT(MOD_LCTL, KC_ESC)
#define KC_ENTS MT(MOD_LSFT, KC_ENT)
#define KC_HYPE MO(_HYPER)
#define KC_SIGN MO(_SIGN)
#define KC_RST RESET
// Brightness
#define KC_BRUP KC_PAUS
#define KC_BRDN KC_SLCK

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

  [_QWERTY] = LAYOUT_kc(
  //,----+----+----+----+----+----+----.     ,----+----+----+----+----+----+----.
     TAB , Q  , W  , E  , R  , T  , GRV,      BSLS, Y  , U  , I  , O  , P  ,EQL ,
  //|----+----+----+----+----+----+----|     |----+----+----+----+----+----+----|
     ESCC, A  , S  , D  , F  , G  ,PIPE,      MINS, H  , J  , K  , L  ,SCLN,QUOT,
  //|----+----+----+----+----+----+----|     |----+----+----+----+----+----+----|
     LSFT, Z  , X  , C  , V  , B  , SPC,      BSPC, N  , M  ,COMM,DOT ,SLSH,ENTS,
  //|----+----+----+----+----+----+----.     .----+----+----+----+----+----+----|
     SIGN,    ,LCTL,LALT,LGUI, SPC,               BSPC, HYPE,LEFT, UP ,DOWN,RIGHT
  //`----+----+----+--+-+----/----/               \----\----+----+----+----+----'
  ),


  [_HYPER] = LAYOUT_kc(
    //,----+----+----+----+----+----+----.     ,----+----+----+----+----+----+----.
       GRV , 1  , 2  , 3  , 4  , 5  ,    ,          , 6  , 7  , 8  , 9  , 0  ,    ,
    //|----+----+----+----+----+----+----|     |----+----+----+----+----+----+----|
           ,    ,    ,PGUP,    ,    ,    ,          ,    ,    , UP ,LBRC,RBRC,BSLS,
    //|----+----+----+----+----+----+----|     |----+----+----+----+----+----+----|
           ,    ,HOME,PGDN,END ,    ,    ,      VOLU,    ,LEFT,DOWN,RGHT,    ,PIPE,
    //|----+----+----+----+----+----+----.     .----+----+----+----+----+----+----|
           ,    ,    ,    ,    ,    ,                VOLD,    ,MUTE,    ,    ,
    //`----+----+----+----+----/----/               \----\----+----+----+----+----'
  ),

  [_SIGN] = LAYOUT_kc(
    //,----+----+----+----+----+----+----.     ,----+----+----+----+----+----+----.
       TILD,EXLM, AT ,HASH,DLR ,PERC,    ,          ,CIRC,AMPR,ASTR,LBRC,RBRC,    ,
    //|----+----+----+----+----+----+----|     |----+----+----+----+----+----+----|
       RST , F1 , F2 , F3 , F4 , F5 , F6 ,          ,    ,    ,    ,LCBR,RCBR,PIPE,
    //|----+----+----+----+----+----+----|     |----+----+----+----+----+----+----|
           , 1  , 2  , 3  , 4  , 5  ,    ,      BRUP, 6  , 7  , 8  , 9  , 0  ,    ,
    //|----+----+----+----+----+----+----.     .----+----+----+----+----+----+----|
           ,    ,    ,    ,    ,    ,                BRDN,    ,    ,    ,    ,
    //`----+----+----+----+----/----/               \----\----+----+----+----+----'
  ),
};